// 引入path模块拼接路径
const path = require('path')

// 读取文件
const fs = require('fs')

const express = require('express')
let app = express()
app.listen(3000, () => { console.log('3000ok') })


// 用户获取登录注册页面的请求
app.get("/login", (req, res) => {


    let filepath = path.join(__dirname, "./html/login.html")

    res.sendFile(filepath)
})
app.get("/register", (req, res) => {

    let filepath = path.join(__dirname, "./html/register.html")

    res.sendFile(filepath)
})


// 用户提交数据的请求
app.get("/dologin", (req, res) => {

    // 接收用户提交过来的参数
    // console.log(req.query);//{ username: 'zs', password: '12' }
    // let user=req.query
    let { username, password } = req.query


    // 读取数据库的数据
    let filepath = path.join(__dirname, "./data/persons.json")
    let persons = JSON.parse(fs.readFileSync(filepath, "utf-8"))


    // 去数据库中查找，有没有用户提交过来的数据
    let index = persons.findIndex((item) => {

        return username == item.username && password == item.password

    })

    if (index == -1) {
        res.send("用户名或密码不正确")
    } else {
        res.send("登录成功")
    }
})



app.get("/doregister", (req, res) => {

    // 接收用户提交过来的参数
    let { username, password } = req.query


    // 读取数据库的数据
    let filepath = path.join(__dirname, "./data/persons.json")
    let persons = JSON.parse(fs.readFileSync(filepath, "utf-8"))


    // 去数据库中查找，有没有用户提交过来的数据
    let index = persons.findIndex((item) => {

        return username == item.username

    })



    if (index == -1) {
        // 执行注册

        persons.push(req.query)
        fs.writeFileSync(filepath, JSON.stringify(persons)  )


        res.send("注册成功")
    } else {
        res.send("此用户名已经被注册了")
    }

})











// 新建项目文件夹
// 初始化项目文件夹
// 下载express
// 创建app.js
// 在app.js中搭建服务器
// 创建html文件夹
// 在html文件夹中，创建html页面
// 在app.js中配置路由：渲染页面的路由   提交数据的路由
